#ifndef JUGADOR_H_
#define JUGADOR_H_

#include "string.h"
#include "Pacman.h"
#include <iostream>

using namespace std;

class Jugador{

	private:

		string nombreUsuario;
		int numeroDeJugador, vidas, puntosAcumulados;
		Pacman* pacman;
		string nombreDeUsuario;

	public:
		Jugador(string nombreUsuarioElegido) {
			nombreUsuario = nombreUsuarioElegido;
			pacman = new Pacman();
			numeroDeJugador = 0;
			vidas = 3;
			puntosAcumulados = 0;
		}


		Jugador(int numeroDeJugadorPorParametro, int vidasPorParametro) {
			numeroDeJugador = numeroDeJugadorPorParametro;
			vidas = vidasPorParametro;
			puntosAcumulados = 0;
		}
		
		~Jugador(){
		}
					
		//Getters

		Pacman* getPacman(){
			return pacman;
		}
		int getNumeroDeJugador() {
			return(this->numeroDeJugador);
		}
		
		int getNumeroDeVidasRestantes(){
			return(this->vidas);
		}
		
		int getpuntosAcumulados(){
			return(this->puntosAcumulados);
		}
		
		//Setters
		void setNumeroDeJugador(int numero){
			if(numero != 1 || numero != 2){
				// exception
			}
			else {
				this->numeroDeJugador = numero;
			}
		}
		
		void setVidas(int vidasPasadasPorParametro){
			if(vidasPasadasPorParametro > 0 && vidasPasadasPorParametro < 3){
				this->vidas = vidasPasadasPorParametro;
			} 
			else {
				// exception
			}
		}

		void setPacman(Pacman* p){
			this->pacman = p;
		}
		
		void aumentarPuntosAcumulados(int puntos){
			this->puntosAcumulados = this->puntosAcumulados + puntos;
		}
		
		void aumentarVidas(){
			this->vidas = this->vidas + 1;
		}

		string getNombreUsuario() {
			return this->nombreUsuario;
		}

};
#endif

